物件導向是一種軟體開發方法,其中資料和方法(函數)被結合到稱為"物件"的單元中。物件導向的主要特色包括:
封裝(Encapsulation):封裝是將資料和相關的方法放在一個單元中,隱藏實現細節,只公開必要的接口。例如,一個銀行帳戶物件可以封裝帳戶餘額和存款/提款方法。
繼承(Inheritance):繼承允許一個物件(子類別)基於另一個物件(父類別)的屬性和方法來建立。例如,繼承可以讓你建立一個特定型別的汽車,它繼承了通用汽車的屬性,但可能有一些特定的方法和屬性。
多態(Polymorphism):多態性允許不同的物件對相同的方法做出不同的反應。例如,不同種類的動物(狗、貓、鳥)都可以有一個"發出聲音"的方法,但實際呼叫這個方法時,它們會發出不同的聲音。
抽象類別和介面(Abstract Classes and Interfaces):抽象類別定義了一個通用的模型,但不能實例化,而介面定義了一組方法,但不提供實現。這些用於定義物件的共同行為。
譬如說:
銀行帳戶:一個銀行帳戶可以作為物件,封裝了帳戶餘額和存款/提款方法。
圖形繪製軟體:在圖形繪製軟體中,圖形物件可以具有不同的屬性(例如顏色、位置)和方法(例如繪製、縮放)。
動物類別:一個動物類別可以有一個"發出聲音"的方法,而具體的動物子類別(狗、貓、鳥)可以繼承這個方法,並實現不同的聲音。
形狀介面:一個形狀介面可以定義計算面積和周長的方法,而不同的圖形物件(圓形、矩形、三角形)可以實現這個介面並提供自己的計算邏輯。